home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 26 / AACD 26.iso / AACD / Magazine / Guru / Samba / source / amiga / amiga.h < prev    next >
Encoding:
C/C++ Source or Header  |  2000-05-22  |  11.7 KB  |  356 lines

  1. /*
  2.  * $Id: amiga.h 1.7 2000/05/22 19:10:46 olsen Exp olsen $
  3.  *
  4.  * :ts=4
  5.  *
  6.  * AmigaOS wrapper routines for Samba 2.0.0, using the AmiTCP V4 API
  7.  * and the SAS/C V6.58 compiler.
  8.  *
  9.  * Copyright (C) 1999-2000 by Olaf `Olsen' Barthel <olsen@sourcery.han.de>
  10.  *
  11.  * This program is free software; you can redistribute it and/or modify
  12.  * it under the terms of the GNU General Public License as published by
  13.  * the Free Software Foundation; either version 2 of the License, or
  14.  * (at your option) any later version.
  15.  * 
  16.  * This program is distributed in the hope that it will be useful,
  17.  * but WITHOUT ANY WARRANTY; without even the implied warranty of
  18.  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  19.  * GNU General Public License for more details.
  20.  * 
  21.  * You should have received a copy of the GNU General Public License
  22.  * along with this program; if not, write to the Free Software
  23.  * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
  24.  */
  25.  
  26. /* This file "remaps" library functions to the
  27.  * emulation code in "amiga.c".
  28.  */
  29. #define mkdir(name,mode) amiga_mkdir(name,mode)
  30. int amiga_mkdir(const char *name,int mode);
  31.  
  32. #define rmdir(name) amiga_rmdir(name)
  33. int amiga_rmdir(const char *name);
  34.  
  35. #define unlink(name) amiga_unlink(name)
  36. int amiga_unlink(const char *name);
  37.  
  38. #define creat(name,prot) amiga_creat(name,prot)
  39. int amiga_creat(const char *name,int prot);
  40.  
  41. #define open(name,mode,prot) amiga_open(name,mode,prot)
  42. int amiga_open(const char *name,int mode,int prot);
  43.  
  44. #define fopen(name,mode) amiga_fopen(name,mode)
  45. FILE * amiga_fopen(const char *name,const char *mode);
  46.  
  47. #define rename(old,new) amiga_rename(old,new)
  48. int amiga_rename(const char *old,const char *new);
  49.  
  50. #define chdir(path) amiga_chdir(path)
  51. int amiga_chdir(const char *path);
  52.  
  53. #define getcwd(buf,size) amiga_getcwd(buf,size)
  54. char * amiga_getcwd(char *buf,int size);
  55.  
  56. #define ftruncate(fd,size) amiga_ftruncate(fd,size)
  57. int amiga_ftruncate(int fd,off_t size);
  58.  
  59. #define accept(sockfd,cliaddr,addrlen) amiga_accept(sockfd,cliaddr,addrlen)
  60. int amiga_accept(int sockfd,struct sockaddr *cliaddr,int *addrlen);
  61.  
  62. #define bind(sockfd,name,namelen) amiga_bind(sockfd,name,namelen)
  63. int amiga_bind(int sockfd,const struct sockaddr *name,int namelen);
  64.  
  65. #define close(fh) amiga_close(fh)
  66. int amiga_close(int fh);
  67.  
  68. #define connect(sockfd,name,namelen) amiga_connect(sockfd,name,namelen)
  69. int amiga_connect(int sockfd,const struct sockaddr *name,int namelen);
  70.  
  71. #define getpeername(sockfd,name,namelen) amiga_getpeername(sockfd,name,namelen)
  72. int amiga_getpeername(int sockfd,struct sockaddr *name,int *namelen);
  73.  
  74. #define getsockopt(sockfd,level,optname,optval,optlen) amiga_getsockopt(sockfd,level,optname,optval,optlen)
  75. int amiga_getsockopt(int sockfd,int level,int optname,void *optval,int *optlen);
  76.  
  77. #define ioctl(fd,request,arg) amiga_ioctl(fd,request,arg)
  78. int amiga_ioctl(int fd,unsigned long request,char *arg);
  79.  
  80. #define listen(sockfd,backlog) amiga_listen(sockfd,backlog)
  81. int amiga_listen(int sockfd,int backlog);
  82.  
  83. #define read(fd,data,size) amiga_read(fd,data,size)
  84. int amiga_read(int fd,void *data,unsigned int size);
  85.  
  86. #define recvfrom(sockfd,buff,len,flags,from,fromlen) amiga_recvfrom(sockfd,buff,len,flags,from,fromlen)
  87. int amiga_recvfrom(int sockfd,void *buff,int len,int flags,struct sockaddr *from,int *fromlen);
  88.  
  89. #define select(nfds,readfds,writefds,exceptfds,timeout) amiga_select(nfds,readfds,writefds,exceptfds,timeout)
  90. int amiga_select(int nfds,fd_set *readfds,fd_set *writefds,fd_set *exceptfds,struct timeval *timeout);
  91.  
  92. #define sendto(sockfd,buff,len,flags,to,tolen) amiga_sendto(sockfd,buff,len,flags,to,tolen)
  93. int amiga_sendto(int sockfd,const void *buff,int len,int flags,const struct sockaddr *to,int tolen);
  94.  
  95. #define setsockopt(sockfd,level,optname,optval,optlen) amiga_setsockopt(sockfd,level,optname,optval,optlen)
  96. int amiga_setsockopt(int sockfd,int level,int optname,const void *optval,int optlen);
  97.  
  98. #define socket(domain,type,protocol) amiga_socket(domain,type,protocol)
  99. int amiga_socket(int domain,int type,int protocol);
  100.  
  101. #define write(fd,data,size) amiga_write(fd,data,size)
  102. int amiga_write(int fd,const void *data,unsigned int size);
  103.  
  104. #define stat(name,st) amiga_stat(name,(struct stat *)st)
  105. int amiga_stat(const char *name, struct stat *st);
  106.  
  107. #define lstat(name,st) amiga_lstat(name,(struct stat *)st)
  108. int amiga_lstat(const char *name, struct stat *st);
  109.  
  110. #define fstat(fd,st) amiga_fstat(fd,st)
  111. int amiga_fstat(int fd,struct stat * st);
  112.  
  113. #define chmod(name,mode) amiga_chmod(name,mode)
  114. int amiga_chmod(const char *name,int mode);
  115.  
  116. #define dup(fd) amiga_dup(fd)
  117. int amiga_dup(int fd);
  118.  
  119. #define dup2(old,new) amiga_dup2(old,new)
  120. int amiga_dup2(int old_fd,int new_fd);
  121.  
  122. #define chown(name,uid,gid) amiga_chown(name,uid,gid)
  123. int amiga_chown(const char *name,uid_t uid,gid_t gid);
  124.  
  125. #define setegid(g) amiga_setegid(g)
  126. int amiga_setegid(gid_t g);
  127.  
  128. #define seteuid(u) amiga_seteuid(u)
  129. int amiga_seteuid(uid_t u);
  130.  
  131. #define gettimeofday(tv) amiga_gettimeofday(tv)
  132. int amiga_gettimeofday(struct timeval *tv);
  133.  
  134. #define utime(name,time) amiga_utime(name,time)
  135. int amiga_utime(const char *name,const struct utimbuf *time);
  136.  
  137. #define sleep(seconds) amiga_sleep(seconds)
  138. void amiga_sleep(unsigned int seconds);
  139.  
  140. #define crypt(key,salt) amiga_crypt(key,salt)
  141. char * amiga_crypt(const char *key,const char *salt);
  142.  
  143. #define getpass(prompt) amiga_getpass(prompt)
  144. char * amiga_getpass(const char *prompt);
  145.  
  146. #define setgid(id) amiga_setgid(id)
  147. int amiga_setgid(gid_t id);
  148.  
  149. #define setgroups(ngroups,groups) amiga_setgroups(ngroups,groups)
  150. int amiga_setgroups(int ngroups,const gid_t *groups);
  151.  
  152. #define getgid() amiga_getgid()
  153. gid_t amiga_getgid(void);
  154.  
  155. #define getgrgid(gid) amiga_getgrgid(gid)
  156. struct group * amiga_getgrgid(gid_t gid);
  157.  
  158. #define getgrnam(name) amiga_getgrnam(name)
  159. struct group * getgrnam(const char * name);
  160.  
  161. #define getgroups(ngroups,groups) amiga_getgroups(ngroups,groups)
  162. int amiga_getgroups(int ngroups, gid_t *groups);
  163.  
  164. #define gethostbyaddr(addr,len,type) amiga_gethostbyaddr(addr,len,type)
  165. struct hostent * amiga_gethostbyaddr(const char *addr, int len, int type);
  166.  
  167. #define getnetbyname(name) amiga_getnetbyname(name)
  168. struct netent * amiga_getnetbyname(const char *name);
  169.  
  170. #define gethostbyname(name) amiga_gethostbyname(name)
  171. struct hostent * amiga_gethostbyname(const char *name);
  172.  
  173. #define gethostname(hostname,size) amiga_gethostname(hostname,size)
  174. int amiga_gethostname(char *hostname,int size);
  175.  
  176. #define getpid() amiga_getpid()
  177. int amiga_getpid(void);
  178.  
  179. #define getpwnam(name) amiga_getpwnam(name)
  180. struct passwd * amiga_getpwnam(const char *name);
  181.  
  182. #define getpwuid(uid) amiga_getpwuid(uid)
  183. struct passwd * amiga_getpwuid(uid_t uid);
  184.  
  185. #define getuid() amiga_getuid()
  186. uid_t amiga_getuid(void);
  187.  
  188. #define initgroups(name,basegroup) amiga_initgroups(name,basegroup)
  189. int amiga_initgroups(const char *name, gid_t basegroup);
  190.  
  191. #define setuid(id) amiga_setuid(id)
  192. int amiga_setuid(uid_t id);
  193.  
  194. #define umask(mask) amiga_umask(mask)
  195. mode_t amiga_umask(mode_t mask);
  196.  
  197. #define inet_addr(addr) amiga_inet_addr(addr)
  198. unsigned long amiga_inet_addr(const char *addr);
  199.  
  200. #define inet_ntoa(addr) amiga_inet_ntoa(addr)
  201. char * amiga_inet_ntoa(struct in_addr in);
  202.  
  203. #define getopt(argc,argv,opts) amiga_getopt(argc,argv,opts)
  204. int amiga_getopt(int argc, char * argv[], char *opts);
  205.  
  206. #define getegid() amiga_getegid()
  207. gid_t amiga_getegid(void);
  208.  
  209. #define geteuid() amiga_geteuid()
  210. uid_t amiga_geteuid(void);
  211.  
  212. #define system(cmd) amiga_system(cmd)
  213. int amiga_system(const char *cmd);
  214.  
  215. #define opendir(dirName) amiga_opendir(dirName)
  216. void * amiga_opendir(const char *dirName);
  217.  
  218. #define closedir(dir) amiga_closedir(dir)
  219. void amiga_closedir(DIR *dir);
  220.  
  221. #define readdir(dir) amiga_readdir(dir)
  222. struct dirent *amiga_readdir(DIR *dir);
  223.  
  224. #define fork() amiga_fork()
  225. int amiga_fork(void);
  226.  
  227. #define kill(pid,sig) amiga_kill(pid,sig)
  228. int amiga_kill(int pid,int sig);
  229.  
  230. #define alarm(seconds) amiga_alarm(seconds)
  231. void amiga_alarm(int seconds);
  232.  
  233. #define strcasecmp(a,b) amiga_strcasecmp(a,b)
  234. int amiga_strcasecmp(const char *a,const char *b);
  235.  
  236. #define strncasecmp(a,b,len) amiga_strncasecmp(a,b,len)
  237. int amiga_strncasecmp(const char *a,const char *b,int len);
  238.  
  239. #define setregid(real,eff) amiga_setregid(real,eff)
  240. int amiga_setregid(gid_t real, gid_t eff);
  241.  
  242. #define setsid() amiga_setsid()
  243. long amiga_setsid(void);
  244.  
  245. #define setreuid(real, eff) amiga_setreuid(real, eff)
  246. int amiga_setreuid(uid_t real, uid_t eff);
  247.  
  248. #define getsockname(sockfd,name,namelen) amiga_getsockname(sockfd,name,namelen)
  249. int amiga_getsockname(int sockfd, struct sockaddr *name, int *namelen);
  250.  
  251. #define execl(path,arg,arg2,arg3) amiga_execl(path,arg,arg2,arg3)
  252. int amiga_execl(const char *path,const char *arg,...);
  253.  
  254. #define strerror(error) amiga_strerror(error)
  255. char * amiga_strerror(int error);
  256.  
  257. #define access(name,modes) amiga_access(name,modes)
  258. int amiga_access(const char *name,int modes);
  259.  
  260. #define lseek(fd,offset,mode) amiga_lseek(fd,offset,mode)
  261. off_t amiga_lseek(int fd,off_t offset,int mode);
  262.  
  263. #define chroot(name) amiga_chroot(name)
  264. int amiga_chroot(const char *name);
  265.  
  266. #define sigmask(num) amiga_sigmask(num)
  267. int amiga_sigmask(int num);
  268.  
  269. #define sigblock(mask) amiga_sigblock(mask)
  270. int amiga_sigblock(int mask);
  271.  
  272. #define sigsetmask(mask) amiga_sigsetmask(mask)
  273. int amiga_sigsetmask(int sigmask);
  274.  
  275. /* This is not an emulated function. */
  276. void amiga_yield_fd(int fd);
  277.  
  278. #define statfs(path,fsd) amiga_statfs(path,fsd)
  279. int amiga_statfs(const char *path,struct statfs *fsd);
  280.  
  281. #define fcntl(fd,cmd,arg) amiga_fcntl(fd,cmd,arg)
  282. int amiga_fcntl(int fd,int cmd,unsigned long arg);
  283.  
  284. #define signal(which,action) amiga_signal(which,action)
  285. void (*amiga_signal(int,void (*)(int)))(int);
  286.  
  287. #define waitpid(pid,status,options) amiga_waitpid(pid,status,options)
  288. int amiga_waitpid(pid_t pid,int *status,int options);
  289.  
  290. #define getc(in) amiga_fgetc(in)
  291. #define fgetc(in) amiga_fgetc(in)
  292. int amiga_fgetc(FILE *in);
  293.  
  294. #define fgets(str,n,in) amiga_fgets(str,n,in)
  295. char * amiga_fgets(char *str,int n,FILE * in);
  296.  
  297. #define fputs(str,out) amiga_fputs(str,out)
  298. int amiga_fputs(const char *str,FILE *out);
  299.  
  300. #define puts(str) amiga_puts(str)
  301. int amiga_puts(const char *str);
  302.  
  303. #define vfprintf(out,fmt,args) amiga_vfprintf(out,fmt,args)
  304. int amiga_vfprintf(FILE *out,const char *fmt,va_list args);
  305.  
  306. #define fprintf amiga_fprintf
  307. int amiga_fprintf(FILE *out,const char *fmt,...);
  308.  
  309. #define printf amiga_printf
  310. int amiga_printf(const char *fmt,...);
  311.  
  312. #define fwrite(data,blockSize,numBlocks,out) amiga_fwrite(data,blockSize,numBlocks,out)
  313. size_t amiga_fwrite(const void *data,size_t blockSize,size_t numBlocks,FILE *out);
  314.  
  315. #define fread(data,blockSize,numBlocks,in) amiga_fread(data,blockSize,numBlocks,in)
  316. size_t amiga_fread(void *data,size_t blockSize,size_t numBlocks,FILE *in);
  317.  
  318. #define fclose(stream) amiga_fclose(stream)
  319. int amiga_fclose(FILE * stream);
  320.  
  321. #define fflush(stream) amiga_fflush(stream)
  322. int amiga_fflush(FILE * stream);
  323.  
  324. #define fseek(stream,offset,mode) amiga_fseek(stream,offset,mode)
  325. int amiga_fseek(FILE * stream,long int offset,int mode);
  326.  
  327. #define ftell(stream) amiga_ftell(stream)
  328. long int amiga_ftell(FILE * stream);
  329.  
  330. #define setvbuf(stream,buff,type,size) amiga_setvbuf(stream,buff,type,size)
  331. int amiga_setvbuf(FILE *stream,char *buff,int type,size_t size);
  332.  
  333. #define rewind(p) amiga_fseek(p, 0L, 0)
  334.  
  335. #define putchar(c) amiga_fputc(c,stdout)
  336. #define putc(c) amiga_fputc(c,stdout)
  337. #define fputc(c,stream) amiga_fputc(c,stream)
  338. int amiga_fputc(int c,FILE *stream);
  339.  
  340. #define setbuf(stream,buffer) amiga_setbuf(stream,buffer)
  341. void amiga_setbuf(FILE *stream,char *buffer);
  342.  
  343. #define recv(fd,buff,nbytes,flags) amiga_recv(fd,buff,nbytes,flags) 
  344. int amiga_recv(int fd,void *buff,size_t nbytes,int flags);
  345.  
  346. #define send(fd,buff,nbytes,flags) amiga_send(fd,buff,nbytes,flags) 
  347. int amiga_send(int fd,void *buff,size_t nbytes,int flags);
  348.  
  349. int amiga_smbrun(char *cmd,char *outfile,BOOL shared);
  350.  
  351. int amiga_get_interfaces(struct iface_struct * ifaces,int max_interfaces);
  352.  
  353. FILE * amiga_popen(const char * command,const char * mode);
  354.  
  355. int amiga_pclose(FILE * fp);
  356.